Many web sites, including particularly retail web sites, have a large number of web pages organized based of categories and subcategories of content. In order to present a user with information regarding the organization of the web site, these web pages often include a hierarchical menu. The hierarchical menu allows a user to browse the categories and subcategories without leaving the current web page.
While a hierarchical menu enhances the user experience, including a hierarchical menu increases the size of the web pages. The increased size is due to the information, including category and subcategory titles and hyperlink addresses, required to present the hierarchical menu. Due to the increased size, web pages with menus require an increased amount of time to retrieve from a server.
To reduce the time required to retrieve each web page, some web site hosts store the menu source code in an external file separate from the web pages. The external file is downloaded one time at a client device and is referenced by the web pages when the menu is rendered by a web browser of the client device. While the web pages might be retrieved relatively quickly, the initial download of this external file can require a significant amount of time. Additionally, this external file stored at the client device can require a significant amount of memory. In many client devices, particularly mobile devices, such as smart phones, memory is a limited resource and utilizing a significant amount of memory to store this external file defining a menu is not desirable.